///*
// * To change this template, choose Tools | Templates
// * and open the template in the editor.
// */
//
//package projetosustentabilidade;
//
//import eletronictonguev1.PCADatas;
//import java.awt.Color;
//import java.awt.Font;
//import java.util.ArrayList;
//import org.jfree.chart.ChartFactory;
//import org.jfree.chart.ChartPanel;
//import org.jfree.chart.JFreeChart;
//import org.jfree.chart.annotations.XYPointerAnnotation;
//
//import org.jfree.chart.plot.PlotOrientation;
//import org.jfree.chart.plot.XYPlot;
//import org.jfree.chart.renderer.xy.XYLineAndShapeRenderer;
//import org.jfree.data.xy.XYSeries;
//import org.jfree.data.xy.XYSeriesCollection;
//import org.jfree.ui.TextAnchor;
//
//public class ChartPCA extends ChartPanel {
//
//    XYSeriesCollection dataset;
//    JFreeChart chart;
//    private ArrayList<PCADatas> pcaChart;
//    private XYSeries series;
//    private   ArrayList<XYPointerAnnotation> point = new ArrayList<XYPointerAnnotation>();
//
//    public ChartPCA(ArrayList<PCADatas> pca) {
//        super(null, true);
//        pcaChart = pca;
//        dataset = new XYSeriesCollection();
//        chart = ChartFactory.createXYLineChart(
//                                "Principal Component Analysis(PCA)",
//                                "1st Principal Component",
//                                "2st Principal Component",
//                                dataset,
//                                PlotOrientation.VERTICAL,
//                                true,
//                                true,
//                                false);
//
//
//        chart.setBackgroundPaint(Color.white);
//        setChart(chart);
//    }
//
//    public void addSeries(double[] x, double[] y, int k) {
//
//        for (int i = 0; i < x.length; i++) {
//            getSeries().add(x[i], y[i]);
//            final XYPointerAnnotation pointer = new XYPointerAnnotation(pcaChart.get(k).getSampleName()+"["+i+"]", x[i], y[i],
//                                                              3.0 * Math.PI / 4.0);
//            pointer.setBaseRadius(35.0);
//            pointer.setTipRadius(10.0);
//            pointer.setFont(new Font("SansSerif", Font.PLAIN, 9));
//            pointer.setPaint(Color.blue);
//            pointer.setTextAnchor(TextAnchor.HALF_ASCENT_RIGHT);
//
//            point.add(pointer);
//        }
//
//        dataset.addSeries(getSeries());
//
//    }
//
//    public void createChart() {
//        final XYPlot plot = chart.getXYPlot();
//        XYLineAndShapeRenderer renderer = new XYLineAndShapeRenderer();
//
//        renderer.setBaseLinesVisible(false);
//        renderer.setBaseShapesVisible(true);
//        plot.setRenderer(renderer);
//        chart.setBackgroundPaint(Color.white);
//        plot.setOutlinePaint(Color.black);
//
//        int k = 0;
//        for (int m = 0;m<pcaChart.size();m++){
//            for ( int i = 0;i<pcaChart.get(m).getSampleNumber();i++){
//                plot.addAnnotation(point.get(k));
//                k++;
//            }
//        }
//    }
//
//    /**
//     * @return the series
//     */
//    public XYSeries getSeries() {
//        return series;
//    }
//
//    /**
//     * @param series the series to set
//     */
//    public void setSeries(XYSeries series) {
//        this.series = series;
//    }
//}
